package com.ruoyi.invoice.mapper;

import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.invoice.domain.InvoiceTemplate;
import com.ruoyi.invoice.vo.InvoiceTemplateVO;

/**
 * 发票凭证模版Mapper接口
 * 
 * @author ruoyi
 * @date 2025-03-05
 */
public interface InvoiceTemplateMapper extends BaseMapper<InvoiceTemplate>
{
    /**
     * 查询发票凭证模版
     * 
     * @param templateId 发票凭证模版主键
     * @return 发票凭证模版
     */
    public InvoiceTemplateVO selectInvoiceTemplateByTemplateId(Long templateId);

    /**
     * 查询发票凭证模版列表
     * 
     * @param invoiceTemplate 发票凭证模版
     * @return 发票凭证模版集合
     */
    public List<InvoiceTemplate> selectInvoiceTemplateList(InvoiceTemplate invoiceTemplate);

    /**
     * 新增发票凭证模版
     * 
     * @param invoiceTemplate 发票凭证模版
     * @return 结果
     */
    public int insertInvoiceTemplate(InvoiceTemplate invoiceTemplate);

    /**
     * 修改发票凭证模版
     * 
     * @param invoiceTemplate 发票凭证模版
     * @return 结果
     */
    public int updateInvoiceTemplate(InvoiceTemplate invoiceTemplate);

    /**
     * 删除发票凭证模版
     * 
     * @param templateId 发票凭证模版主键
     * @return 结果
     */
    public int deleteInvoiceTemplateByTemplateId(Long templateId);

    /**
     * 批量删除发票凭证模版
     * 
     * @param templateIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteInvoiceTemplateByTemplateIds(Long[] templateIds);
}
